--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
scripts/ci/setup-cosign.sh e41daa5b65e07a5baa1aaad32d97f90482f1cd1c (e41daa5b) Text, 1.09 KB
T8b949e#!/bin/sh
T8b949e# Install cosign from GitHub releases with SHA256 verification.
T8b949e# Usage: setup-cosign.sh [version]
Tffa657set -eu
T8b949e# shellcheck source=priv.sh disable=SC1091
. Ta5d6ff"Tff7b72$(dirname Ta5d6ff"Te6edf3$0Ta5d6ff"Tff7b72)Ta5d6ff/priv.shTa5d6ff"
Te6edf3COSIGN_VERSIONTff7b72=Ta5d6ff"Tffd700${Te6edf31Tff7b72:-Te6edf33Tb4b4b4.0.6Tffd700}Ta5d6ff"
Te6edf3ARCHTff7b72=Ta5d6ff"Tff7b72$(uname -mTff7b72)Ta5d6ff"
Tff7b72case Ta5d6ff"Te6edf3$ARCHTa5d6ff" Tff7b72in
x86_64Tff7b72) Te6edf3ARCHTff7b72=Ta5d6ff"amd64" Tb4b4b4;Tb4b4b4;
aarch64Tff7b72) Te6edf3ARCHTff7b72=Ta5d6ff"arm64" Tb4b4b4;Tb4b4b4;
*Tff7b72) Tffa657echo Ta5d6ff"Ta5d6ffUnsupported architecture: Te6edf3$ARCHTa5d6ff" >Tb4b4b4&T79c0ff2Tb4b4b4; Tffa657exit T79c0ff1 Tb4b4b4;Tb4b4b4;
Tff7b72esac
Te6edf3BASE_URLTff7b72=Ta5d6ff"Ta5d6ffhttps://github.com/sigstore/cosign/releases/download/vTffd700${Te6edf3COSIGN_VERSIONTffd700}Ta5d6ff"
Te6edf3BINARYTff7b72=Ta5d6ff"Ta5d6ffcosign-linux-Tffd700${Te6edf3ARCHTffd700}Ta5d6ff"
Te6edf3CHECKSUMS_URLTff7b72=Ta5d6ff"Tffd700${Te6edf3BASE_URLTffd700}Ta5d6ff/cosign_checksums.txtTa5d6ff"
curl -fsSL Ta5d6ff"Te6edf3$CHECKSUMS_URLTa5d6ff" -o /tmp/cosign-checksums.txt
curl -fsSL Ta5d6ff"Tffd700${Te6edf3BASE_URLTffd700}Ta5d6ff/Tffd700${Te6edf3BINARYTffd700}Ta5d6ff" -o /tmp/cosign
Te6edf3EXPECTEDTff7b72=Ta5d6ff"Tff7b72$(grep Ta5d6ff"Ta5d6ff Tffd700${Te6edf3BINARYTffd700}Ta5d6ff\$Ta5d6ff" /tmp/cosign-checksums.txt Tb4b4b4| awk Ta5d6ff'{print $1}'Tff7b72)Ta5d6ff"
Te6edf3ACTUALTff7b72=Ta5d6ff"Tff7b72$(sha256sum /tmp/cosign Tb4b4b4| awk Ta5d6ff'{print $1}'Tff7b72)Ta5d6ff"
Tff7b72if Tff7b72[ -z Ta5d6ff"Te6edf3$EXPECTEDTa5d6ff" Tff7b72] Tff7b72|| Tff7b72[ Ta5d6ff"Te6edf3$EXPECTEDTa5d6ff" !Tff7b72= Ta5d6ff"Te6edf3$ACTUALTa5d6ff" Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"Ta5d6ffSHA256 verification failed for Tffd700${Te6edf3BINARYTffd700}Ta5d6ff" >Tb4b4b4&T79c0ff2
rm -f /tmp/cosign /tmp/cosign-checksums.txt
Tffa657exit T79c0ff1
Tff7b72fi
run_priv install -m T79c0ff0755 /tmp/cosign /usr/local/bin/cosign
rm -f /tmp/cosign /tmp/cosign-checksums.txt
cosign version
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────